import com.mysql.cj.jdbc.MysqlDataSource;

import javax.sql.DataSource;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;

/**
 * Creat with IntelliJ IDEA
 * Description
 * User: mamba24
 * Date: 2022-07-16
 * Time: 11:00
 * To BE A Better Person-2020-3-2
 */
public class JDBCtest {
    public static void main(String[] args) throws SQLException {
        //1.使用datasource类来描述MySQL服务器位置
        DataSource dataSource=new MysqlDataSource();
        //1.   jdbc:mysql://  协议名，给jdbc连mysql用的
        //2.   127.0.0.1  IP地址（特殊的IP地址，表示本机）（环回IP）
        //3.   3306 端口 用来区分当前主机上那个程序  MySQL服务器默认端口3306
        //4.   java104 数据库名字
        //5.   characterEncoding=utf8 设置客户端连接服务器的字符集
        //6.   useSSL=false 是否加密
        ((MysqlDataSource)dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/java104?characterEncoding=utf8&useSSL=false");
        ((MysqlDataSource)dataSource).setUser("root");
        ((MysqlDataSource)dataSource).setPassword("lakers26");
        //和数据库服务器建立链接,连接失败会抛出异常
        Connection connection=dataSource.getConnection();
        //System.out.println(connection);
        //构造SQL语句
        //新增
        String sql = "insert into jdbc values (1,'krik')";
        PreparedStatement preparedStatement=connection.prepareStatement(sql);
        //执行SQL语句
        //insert,update,delete都是通过executeUpdate
        //select通过executeQuery
        int ret=preparedStatement.executeUpdate();//返回值表示影响到几行
        //断开链接，后创建的先释放
        preparedStatement.close();
        connection.close();
    }
}
